/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

云物理服务器
云物理服务器地域操作相关的接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#ifndef CpsApiModel_h
#define CpsApiModel_h
#import <JDCloudOCSDKCore/JDCloudOCSDKCore.h>
#import <JDCloudOCSDKCommon/JDCloudOCSDKCommon.h>
#import <JDCloudOCSDKCps/CpsModel.h>


@interface CpsQueryRouteTableRequest:JDCloudRequest

/// 路由表ID
@property (strong,nonatomic,nonnull)  NSString*  routeTableId;
-(id) initWithRegion:(NSString *)regionId
routeTableId:(NSString*)routeTableId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
routeTableId:(NSString*)routeTableId;

@end

@interface CpsQueryListenerRequest:JDCloudRequest

/// 监听器ID
@property (strong,nonatomic,nonnull)  NSString*  listenerId;
-(id) initWithRegion:(NSString *)regionId
listenerId:(NSString*)listenerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
listenerId:(NSString*)listenerId;

@end

@interface CpsCreateListenerResult : NSObject
/// 监听器ID
 @property (strong,nonatomic,nonnull)  NSString*  listenerId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithListenerId:(NSString*) listenerId;
@end

@interface CpsDeleteListenerRequest:JDCloudRequest

/// 监听器ID
@property (strong,nonatomic,nonnull)  NSString*  listenerId;
-(id) initWithRegion:(NSString *)regionId
listenerId:(NSString*)listenerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
listenerId:(NSString*)listenerId;

@end

@interface CpsModifyListenerRequest:JDCloudRequest

/// 调度算法
@property (strong,nonatomic,nonnull)  NSString*  algorithm;
/// 会话保持
@property (strong,nonatomic,nonnull)  NSString*  stickySession;
/// 是否获取真实ip，取值范围on|off
@property (strong,nonatomic,nonnull)  NSString*  realIp;
/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 健康检查
@property (strong,nonatomic,nonnull)  NSString*  healthCheck;
/// 健康检查响应的最大超时时间
@property (strong,nonatomic,nonnull)  NSNumber*  healthCheckTimeout;
/// 健康检查响应的最大间隔时间
@property (strong,nonatomic,nonnull)  NSNumber*  healthCheckInterval;
/// 健康检查结果为success的阈值
@property (strong,nonatomic,nonnull)  NSNumber*  healthyThreshold;
/// 健康检查结果为fail的阈值
@property (strong,nonatomic,nonnull)  NSNumber*  unhealthyThreshold;
/// 服务器组id
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
/// 监听器ID
@property (strong,nonatomic,nonnull)  NSString*  listenerId;
-(id) initWithRegion:(NSString *)regionId
algorithm:(NSString*)algorithm
stickySession:(NSString*)stickySession
realIp:(NSString*)realIp
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
healthCheck:(NSString*)healthCheck
healthCheckTimeout:(NSNumber*)healthCheckTimeout
healthCheckInterval:(NSNumber*)healthCheckInterval
healthyThreshold:(NSNumber*)healthyThreshold
unhealthyThreshold:(NSNumber*)unhealthyThreshold
serverGroupId:(NSString*)serverGroupId
listenerId:(NSString*)listenerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
algorithm:(NSString*)algorithm
stickySession:(NSString*)stickySession
realIp:(NSString*)realIp
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
healthCheck:(NSString*)healthCheck
healthCheckTimeout:(NSNumber*)healthCheckTimeout
healthCheckInterval:(NSNumber*)healthCheckInterval
healthyThreshold:(NSNumber*)healthyThreshold
unhealthyThreshold:(NSNumber*)unhealthyThreshold
serverGroupId:(NSString*)serverGroupId
listenerId:(NSString*)listenerId;

@end

@interface CpsStopListenerRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 监听器ID
@property (strong,nonatomic,nonnull)  NSString*  listenerId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
listenerId:(NSString*)listenerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
listenerId:(NSString*)listenerId;

@end

@interface CpsStartListenerRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 监听器ID
@property (strong,nonatomic,nonnull)  NSString*  listenerId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
listenerId:(NSString*)listenerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
listenerId:(NSString*)listenerId;

@end

@interface CpsStartListenerResult : NSObject
/// 开启监听器是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsStopListenerResult : NSObject
/// 关闭监听器是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDeleteListenerResult : NSObject
/// 删除操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsAddServersResult : NSObject
/// ServerIds
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  serverIds;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServerIds:(NSArray<NSString*>*) serverIds;
@end

@interface CpsModifyServerResult : NSObject
/// 后端服务器ID
 @property (strong,nonatomic,nonnull)  NSString*  serverId;
/// 后端云物理服务器ID
 @property (strong,nonatomic,nonnull)  NSString*  instanceId;
/// 内网Ip
 @property (strong,nonatomic,nonnull)  NSString*  privateIp;
/// 端口
 @property (strong,nonatomic,nonnull)  NSNumber*  port;
/// 后端云物理服务器权重
 @property (strong,nonatomic,nonnull)  NSNumber*  weight;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServerId:(NSString*) serverId

    instanceId:(NSString*)instanceId

    privateIp:(NSString*)privateIp

    port:(NSNumber*)port

    weight:(NSNumber*)weight;
@end

@interface CpsModifyServerRequest:JDCloudRequest

/// 权重
@property (strong,nonatomic,nonnull)  NSNumber*  weight;
/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
/// 后端服务器ID
@property (strong,nonatomic,nonnull)  NSString*  serverId;
-(id) initWithRegion:(NSString *)regionId
weight:(NSNumber*)weight
serverGroupId:(NSString*)serverGroupId
serverId:(NSString*)serverId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
weight:(NSNumber*)weight
serverGroupId:(NSString*)serverGroupId
serverId:(NSString*)serverId;

@end

@interface CpsRemoveServerRequest:JDCloudRequest

/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
/// 后端服务器ID
@property (strong,nonatomic,nonnull)  NSString*  serverId;
-(id) initWithRegion:(NSString *)regionId
serverGroupId:(NSString*)serverGroupId
serverId:(NSString*)serverId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
serverGroupId:(NSString*)serverGroupId
serverId:(NSString*)serverId;

@end

@interface CpsRemoveServerResult : NSObject
/// 删除操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDeleteKeypairsResult : NSObject
/// 删除操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsImportKeypairsRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 密钥对名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 公钥
@property (strong,nonatomic,nonnull)  NSString*  publicKey;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
name:(NSString*)name
publicKey:(NSString*)publicKey;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
name:(NSString*)name
publicKey:(NSString*)publicKey;

@end

@interface CpsCreateKeypairsRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 密钥对名称
@property (strong,nonatomic,nonnull)  NSString*  name;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
name:(NSString*)name;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
name:(NSString*)name;

@end

@interface CpsQueryKeypairRequest:JDCloudRequest

/// 密钥对ID
@property (strong,nonatomic,nonnull)  NSString*  keypairId;
-(id) initWithRegion:(NSString *)regionId
keypairId:(NSString*)keypairId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keypairId:(NSString*)keypairId;

@end

@interface CpsCreateKeypairsResult : NSObject
/// 密钥对id
 @property (strong,nonatomic,nonnull)  NSString*  keypairId;
/// 地域
 @property (strong,nonatomic,nonnull)  NSString*  region;
/// 密钥对名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 公钥
 @property (strong,nonatomic,nonnull)  NSString*  publicKey;
/// 指纹
 @property (strong,nonatomic,nonnull)  NSString*  fingerPrint;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 更新时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;
/// 私钥
 @property (strong,nonatomic,nonnull)  NSString*  privateKey;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithKeypairId:(NSString*) keypairId

    region:(NSString*)region

    name:(NSString*)name

    publicKey:(NSString*)publicKey

    fingerPrint:(NSString*)fingerPrint

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime

    privateKey:(NSString*)privateKey;
@end

@interface CpsDeleteKeypairsRequest:JDCloudRequest

/// 密钥对ID
@property (strong,nonatomic,nonnull)  NSString*  keypairId;
-(id) initWithRegion:(NSString *)regionId
keypairId:(NSString*)keypairId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keypairId:(NSString*)keypairId;

@end

@interface CpsImportKeypairsResult : NSObject
/// 密钥对id
 @property (strong,nonatomic,nonnull)  NSString*  keypairId;
/// 地域
 @property (strong,nonatomic,nonnull)  NSString*  region;
/// 密钥对名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 公钥
 @property (strong,nonatomic,nonnull)  NSString*  publicKey;
/// 指纹
 @property (strong,nonatomic,nonnull)  NSString*  fingerPrint;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 更新时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithKeypairId:(NSString*) keypairId

    region:(NSString*)region

    name:(NSString*)name

    publicKey:(NSString*)publicKey

    fingerPrint:(NSString*)fingerPrint

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface CpsDescribeBasicSubnetRequest:JDCloudRequest

/// 可用区, 如cn-east-1a；可调用接口（describeRegiones）获取云物理服务器在该地域支持的可用区
@property (strong,nonatomic,nonnull)  NSString*  az;
-(id) initWithRegion:(NSString *)regionId
az:(NSString*)az;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
az:(NSString*)az;

@end

@interface CpsDeleteSubnetRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 子网ID
@property (strong,nonatomic,nonnull)  NSString*  subnetId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
subnetId:(NSString*)subnetId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
subnetId:(NSString*)subnetId;

@end

@interface CpsDeleteSubnetResult : NSObject
/// 删除操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeSubnetRequest:JDCloudRequest

/// 子网ID
@property (strong,nonatomic,nonnull)  NSString*  subnetId;
-(id) initWithRegion:(NSString *)regionId
subnetId:(NSString*)subnetId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
subnetId:(NSString*)subnetId;

@end

@interface CpsCreateSubnetResult : NSObject
/// 子网ID
 @property (strong,nonatomic,nonnull)  NSString*  subnetId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubnetId:(NSString*) subnetId;
@end

@interface CpsModifySubnetRequest:JDCloudRequest

/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 子网ID
@property (strong,nonatomic,nonnull)  NSString*  subnetId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
subnetId:(NSString*)subnetId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
subnetId:(NSString*)subnetId;

@end

@interface CpsModifyElasticIpBandwidthResult : NSObject
/// 修改带宽是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsModifyElasticIpBandwidthRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 带宽，单位Mbps，取值范围[1,200]
@property (strong,nonatomic,nonnull)  NSNumber*  bandwidth;
/// 弹性公网IPID
@property (strong,nonatomic,nonnull)  NSString*  elasticIpId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
bandwidth:(NSNumber*)bandwidth
elasticIpId:(NSString*)elasticIpId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
bandwidth:(NSNumber*)bandwidth
elasticIpId:(NSString*)elasticIpId;

@end

@interface CpsApplyElasticIpsResult : NSObject
/// ElasticIpIds
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  elasticIpIds;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithElasticIpIds:(NSArray<NSString*>*) elasticIpIds;
@end

@interface CpsDescribeElasticIpRequest:JDCloudRequest

/// 弹性公网IPID
@property (strong,nonatomic,nonnull)  NSString*  elasticIpId;
-(id) initWithRegion:(NSString *)regionId
elasticIpId:(NSString*)elasticIpId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
elasticIpId:(NSString*)elasticIpId;

@end

@interface CpsDeleteServerGroupRequest:JDCloudRequest

/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
-(id) initWithRegion:(NSString *)regionId
serverGroupId:(NSString*)serverGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
serverGroupId:(NSString*)serverGroupId;

@end

@interface CpsCreateServerGroupResult : NSObject
/// 服务器组ID
 @property (strong,nonatomic,nonnull)  NSString*  serverGroupId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServerGroupId:(NSString*) serverGroupId;
@end

@interface CpsDeleteServerGroupResult : NSObject
/// 删除操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsModifyServerGroupResult : NSObject
/// 负载均衡ID
 @property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
/// 服务器组ID
 @property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
/// 名称
 @property (strong,nonatomic,nonnull)  NSString*  name;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithLoadBalancerId:(NSString*) loadBalancerId

    serverGroupId:(NSString*)serverGroupId

    name:(NSString*)name;
@end

@interface CpsQueryServerGroupRequest:JDCloudRequest

/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
-(id) initWithRegion:(NSString *)regionId
serverGroupId:(NSString*)serverGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
serverGroupId:(NSString*)serverGroupId;

@end

@interface CpsModifyServerGroupRequest:JDCloudRequest

/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
serverGroupId:(NSString*)serverGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
serverGroupId:(NSString*)serverGroupId;

@end

@interface CpsDescribeDeviceRaidsRequest:JDCloudRequest

/// 实例类型，可调用（describeDeviceTypes）接口获取指定地域的实例类型，例如：cps.c.normal
@property (strong,nonatomic,nonnull)  NSString*  deviceType;
/// 磁盘类型，取值范围：system、data
@property (strong,nonatomic,nonnull)  NSString*  volumeType;
-(id) initWithRegion:(NSString *)regionId
deviceType:(NSString*)deviceType
volumeType:(NSString*)volumeType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deviceType:(NSString*)deviceType
volumeType:(NSString*)volumeType;

@end

@interface CpsReinstallInstanceResult : NSObject
/// 重装操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeOSRequest:JDCloudRequest

/// 实例类型，可调用接口（describeDeviceTypes）获取指定地域的实例类型，例如：cps.c.normal
@property (strong,nonatomic,nonnull)  NSString*  deviceType;
/// 操作系统类型，取值范围：CentOS、Ubuntu
@property (strong,nonatomic,nonnull)  NSString*  osType;
-(id) initWithRegion:(NSString *)regionId
deviceType:(NSString*)deviceType
osType:(NSString*)osType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deviceType:(NSString*)deviceType
osType:(NSString*)osType;

@end

@interface CpsCreateInstancesResult : NSObject
/// InstanceIds
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  instanceIds;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithInstanceIds:(NSArray<NSString*>*) instanceIds;
@end

@interface CpsDescribeInstanceRaidResult : NSObject
/// 系统盘RAID类型ID
 @property (strong,nonatomic,nonnull)  NSString*  sysRaidTypeId;
/// 系统盘RAID类型
 @property (strong,nonatomic,nonnull)  NSString*  sysRaidType;
/// 数据盘RAID类型ID
 @property (strong,nonatomic,nonnull)  NSString*  dataRaidTypeId;
/// 数据盘RAID类型
 @property (strong,nonatomic,nonnull)  NSString*  dataRaidType;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSysRaidTypeId:(NSString*) sysRaidTypeId

    sysRaidType:(NSString*)sysRaidType

    dataRaidTypeId:(NSString*)dataRaidTypeId

    dataRaidType:(NSString*)dataRaidType;
@end

@interface CpsModifyInstanceRequest:JDCloudRequest

/// 云物理服务器名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 云物理服务器描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
instanceId:(NSString*)instanceId;

@end

@interface CpsDescribeDeviceTypesRequest:JDCloudRequest

/// 可用区，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  az;
-(id) initWithRegion:(NSString *)regionId
az:(NSString*)az;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
az:(NSString*)az;

@end

@interface CpsResetPasswordResult : NSObject
/// 重置结果
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsModifyBandwidthRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 外网带宽，单位Mbps，取值范围[1,200]
@property (strong,nonatomic,nonnull)  NSNumber*  bandwidth;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
bandwidth:(NSNumber*)bandwidth
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
bandwidth:(NSNumber*)bandwidth
instanceId:(NSString*)instanceId;

@end

@interface CpsDescribeInstanceMonitorInfoRequest:JDCloudRequest

/// 开始时间的时间戳，格式：1562915166551
@property (strong,nonatomic,nonnull)  NSNumber*  startTime;
/// 结束时间的时间戳，格式：1562915166551
@property (strong,nonatomic,nonnull)  NSNumber*  endTime;
/// cps.cpu.util - CPU使用率&lt;br/&gt;
   /// cps.memory.util - 内存使用率&lt;br/&gt;
   /// cps.memory.used - 内存使用量&lt;br/&gt;
   /// cps.disk.used - 磁盘使用量&lt;br/&gt;
   /// cps.disk.util - 磁盘使用率&lt;br/&gt;
   /// cps.disk.bytes.read - 磁盘读流量&lt;br/&gt;
   /// cps.disk.bytes.write - 磁盘写流量&lt;br/&gt;
   /// cps.disk.counts.read - 磁盘读IOPS&lt;br/&gt;
   /// cps.disk.counts.write - 磁盘写IOPS&lt;br/&gt;
   /// cps.network.bytes.ingress - 网卡进流量&lt;br/&gt;
   /// cps.network.bytes.egress - 网卡出流量&lt;br/&gt;
   /// cps.network.packets.ingress - 网络进包量&lt;br/&gt;
   /// cps.network.packets.egress - 网络出包量&lt;br/&gt;
   /// cps.avg.load1 - CPU平均负载1min&lt;br/&gt;
   /// cps.avg.load5 - CPU平均负载5min&lt;br/&gt;
   /// cps.avg.load15 - CPU平均负载15min&lt;br/&gt;
   /// cps.tcp.connect.total - TCP总连接数&lt;br/&gt;
   /// cps.tcp.connect.established - TCP正常连接数&lt;br/&gt;
   /// cps.process.total - 总进程数
   /// 
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  metrics;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
startTime:(NSNumber*)startTime
endTime:(NSNumber*)endTime
metrics:(NSArray<NSString*>*)metrics
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
startTime:(NSNumber*)startTime
endTime:(NSNumber*)endTime
metrics:(NSArray<NSString*>*)metrics
instanceId:(NSString*)instanceId;

@end

@interface CpsDescribeInstanceRaidRequest:JDCloudRequest

/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
instanceId:(NSString*)instanceId;

@end

@interface CpsRestartInstanceRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
instanceId:(NSString*)instanceId;

@end

@interface CpsDisassociateElasticIpRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 弹性公网IPId
@property (strong,nonatomic,nonnull)  NSString*  elasticIpId;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
instanceId:(NSString*)instanceId;

@end

@interface CpsResetPasswordRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 密码
@property (strong,nonatomic,nonnull)  NSString*  password;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
password:(NSString*)password
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
password:(NSString*)password
instanceId:(NSString*)instanceId;

@end

@interface CpsDescribeInstanceRequest:JDCloudRequest

/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
instanceId:(NSString*)instanceId;

@end

@interface CpsModifyInstanceResult : NSObject
/// 云物理服务器名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 云物理服务器描述
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithName:(NSString*) name

    descriptionValue:(NSString*)descriptionValue;
@end

@interface CpsAssociateElasticIpResult : NSObject
/// 绑定结果
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsStopInstanceRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
instanceId:(NSString*)instanceId;

@end

@interface CpsStartInstanceRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
instanceId:(NSString*)instanceId;

@end

@interface CpsAssociateElasticIpRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 弹性公网IPID
@property (strong,nonatomic,nonnull)  NSString*  elasticIpId;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
instanceId:(NSString*)instanceId;

@end

@interface CpsStartInstanceResult : NSObject
/// 开机操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeInstanceNameRequest:JDCloudRequest

/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
instanceId:(NSString*)instanceId;

@end

@interface CpsDisassociateElasticIpResult : NSObject
/// 解绑结果
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeInstanceStatusRequest:JDCloudRequest

/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
instanceId:(NSString*)instanceId;

@end

@interface CpsRestartInstanceResult : NSObject
/// 重启操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeInstanceNameResult : NSObject
/// 云物理服务器名称
 @property (strong,nonatomic,nonnull)  NSString*  name;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithName:(NSString*) name;
@end

@interface CpsModifyBandwidthResult : NSObject
/// 升级带宽是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeInstanceStatusResult : NSObject
/// CPU状态是否正常
 @property (strong,nonatomic,nonnull)  NSNumber*  cpus;
/// 内存状态是否正常
 @property (strong,nonatomic,nonnull)  NSNumber*  mems;
/// 硬盘状态是否正常
 @property (strong,nonatomic,nonnull)  NSNumber*  disks;
/// 网卡状态是否正常
 @property (strong,nonatomic,nonnull)  NSNumber*  nics;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithCpus:(NSNumber*) cpus

    mems:(NSNumber*)mems

    disks:(NSNumber*)disks

    nics:(NSNumber*)nics;
@end

@interface CpsStopInstanceResult : NSObject
/// 关机操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDisassociateElasticIpLBResult : NSObject
/// 解绑结果
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsStopLoadBalancerResult : NSObject
/// 关闭负载均衡实例是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsAssociateElasticIpLBRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 弹性公网IPId
@property (strong,nonatomic,nonnull)  NSString*  elasticIpId;
/// 负载均衡实例ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
loadBalancerId:(NSString*)loadBalancerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
loadBalancerId:(NSString*)loadBalancerId;

@end

@interface CpsAssociateElasticIpLBResult : NSObject
/// 绑定结果
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDisassociateElasticIpLBRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 弹性公网IPId
@property (strong,nonatomic,nonnull)  NSString*  elasticIpId;
/// 负载均衡实例ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
loadBalancerId:(NSString*)loadBalancerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
elasticIpId:(NSString*)elasticIpId
loadBalancerId:(NSString*)loadBalancerId;

@end

@interface CpsQueryLoadBalancerRequest:JDCloudRequest

/// 负载均衡实例ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
-(id) initWithRegion:(NSString *)regionId
loadBalancerId:(NSString*)loadBalancerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
loadBalancerId:(NSString*)loadBalancerId;

@end

@interface CpsStartLoadBalancerResult : NSObject
/// 开启负载均衡实例是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsStartLoadBalancerRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 负载均衡实例ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
loadBalancerId:(NSString*)loadBalancerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
loadBalancerId:(NSString*)loadBalancerId;

@end

@interface CpsStopLoadBalancerRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 负载均衡实例ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
loadBalancerId:(NSString*)loadBalancerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
loadBalancerId:(NSString*)loadBalancerId;

@end

@interface CpsCreateLoadBalancerResult : NSObject
/// 负载均衡实例ID
 @property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithLoadBalancerId:(NSString*) loadBalancerId;
@end

@interface CpsModifyLoadBalancerRequest:JDCloudRequest

/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 负载均衡实例ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
loadBalancerId:(NSString*)loadBalancerId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
loadBalancerId:(NSString*)loadBalancerId;

@end

@interface CpsModifyVpcRequest:JDCloudRequest

/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 私有网络ID
@property (strong,nonatomic,nonnull)  NSString*  vpcId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
vpcId:(NSString*)vpcId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
descriptionValue:(NSString*)descriptionValue
vpcId:(NSString*)vpcId;

@end

@interface CpsDescribeVpcRequest:JDCloudRequest

/// 私有网络ID
@property (strong,nonatomic,nonnull)  NSString*  vpcId;
-(id) initWithRegion:(NSString *)regionId
vpcId:(NSString*)vpcId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
vpcId:(NSString*)vpcId;

@end

@interface CpsCreateVpcResult : NSObject
/// 私有网络ID
 @property (strong,nonatomic,nonnull)  NSString*  vpcId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithVpcId:(NSString*) vpcId;
@end

@interface CpsDeleteVpcRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 私有网络ID
@property (strong,nonatomic,nonnull)  NSString*  vpcId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
vpcId:(NSString*)vpcId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
vpcId:(NSString*)vpcId;

@end

@interface CpsDeleteVpcResult : NSObject
/// 删除操作是否成功
 @property (strong,nonatomic,nonnull)  NSNumber*  success;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccess:(NSNumber*) success;
@end

@interface CpsDescribeRegionesRequest:JDCloudRequest

/// 网络类型basic/vpc, 默认basic
@property (strong,nonatomic,nonnull)  NSString*  networkType;
-(id) initWithRegion:(NSString *)regionId
networkType:(NSString*)networkType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
networkType:(NSString*)networkType;

@end

@interface CpsQueryRouteTablesResult : NSObject
/// RouteTables
 @property (strong,nonatomic,nonnull)  NSArray<RouteTable*>*  routeTables;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRouteTables:(NSArray<RouteTable*>*) routeTables

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsQueryRouteTableResult : NSObject
/// 路由表详细信息
 @property (strong,nonatomic,nonnull)  RouteTable*  routeTable;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRouteTable:(RouteTable*) routeTable;
@end

@interface CpsQueryRouteTablesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryRouteTablesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryRouteTablesResult*) result;
@end

@interface CpsQueryRouteTableResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryRouteTableResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryRouteTableResult*) result;
@end

@interface CpsQueryRouteTablesRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 私有网络ID，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  vpcId;
/// routeTableId - 路由表ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
vpcId:(NSString*)vpcId
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
vpcId:(NSString*)vpcId
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsDeleteListenerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDeleteListenerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDeleteListenerResult*) result;
@end

@interface CpsCreateListenerRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 监听器配置
@property (strong,nonatomic,nonnull)  ListenerSpec*  loadBalancerSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
loadBalancerSpec:(ListenerSpec*)loadBalancerSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
loadBalancerSpec:(ListenerSpec*)loadBalancerSpec;

@end

@interface CpsModifyListenerResult : NSObject
/// 监听器详细信息
 @property (strong,nonatomic,nonnull)  Listener*  loadBalancer;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithLoadBalancer:(Listener*) loadBalancer;
@end

@interface CpsCreateListenerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateListenerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateListenerResult*) result;
@end

@interface CpsModifyListenerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyListenerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyListenerResult*) result;
@end

@interface CpsQueryListenerResult : NSObject
/// 监听器详细信息
 @property (strong,nonatomic,nonnull)  Listener*  listener;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithListener:(Listener*) listener;
@end

@interface CpsStartListenerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsStartListenerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsStartListenerResult*) result;
@end

@interface CpsQueryListenersResult : NSObject
/// Listeners
 @property (strong,nonatomic,nonnull)  NSArray<Listener*>*  listeners;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithListeners:(NSArray<Listener*>*) listeners

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsQueryListenersRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 负载均衡实例ID，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
/// listenerId - 监听器ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
loadBalancerId:(NSString*)loadBalancerId
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
loadBalancerId:(NSString*)loadBalancerId
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsQueryListenerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryListenerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryListenerResult*) result;
@end

@interface CpsQueryListenersResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryListenersResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryListenersResult*) result;
@end

@interface CpsStopListenerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsStopListenerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsStopListenerResult*) result;
@end

@interface CpsModifyServerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyServerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyServerResult*) result;
@end

@interface CpsRemoveServerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsRemoveServerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsRemoveServerResult*) result;
@end

@interface CpsQueryServersRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 监听器Id
@property (strong,nonatomic,nonnull)  NSString*  listenerId;
/// serverId - 后端服务器ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
listenerId:(NSString*)listenerId
filters:(NSArray<Filter*>*)filters
serverGroupId:(NSString*)serverGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
listenerId:(NSString*)listenerId
filters:(NSArray<Filter*>*)filters
serverGroupId:(NSString*)serverGroupId;

@end

@interface CpsQueryServersResult : NSObject
/// Servers
 @property (strong,nonatomic,nonnull)  NSArray<Server*>*  servers;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServers:(NSArray<Server*>*) servers

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsAddServersResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsAddServersResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsAddServersResult*) result;
@end

@interface CpsAddServersRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 后端服务器配置
@property (strong,nonatomic,nonnull)  NSArray<ServerSpec*>*  serverSpec;
/// 服务器组ID
@property (strong,nonatomic,nonnull)  NSString*  serverGroupId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
serverSpec:(NSArray<ServerSpec*>*)serverSpec
serverGroupId:(NSString*)serverGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
serverSpec:(NSArray<ServerSpec*>*)serverSpec
serverGroupId:(NSString*)serverGroupId;

@end

@interface CpsQueryServersResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryServersResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryServersResult*) result;
@end

@interface CpsCreateKeypairsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateKeypairsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateKeypairsResult*) result;
@end

@interface CpsQueryKeypairResult : NSObject
/// 密钥对详细信息
 @property (strong,nonatomic,nonnull)  Keypair*  server;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServer:(Keypair*) server;
@end

@interface CpsQueryKeypairResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryKeypairResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryKeypairResult*) result;
@end

@interface CpsQueryKeypairsResult : NSObject
/// Servers
 @property (strong,nonatomic,nonnull)  NSArray<Keypair*>*  servers;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServers:(NSArray<Keypair*>*) servers

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsQueryKeypairsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryKeypairsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryKeypairsResult*) result;
@end

@interface CpsQueryKeypairsRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 密钥对名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// keypairId  - 密钥对ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsDeleteKeypairsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDeleteKeypairsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDeleteKeypairsResult*) result;
@end

@interface CpsImportKeypairsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsImportKeypairsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsImportKeypairsResult*) result;
@end

@interface CpsDescribeBasicSubnetResult : NSObject
/// 子网详细信息
 @property (strong,nonatomic,nonnull)  Subnet*  subnet;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubnet:(Subnet*) subnet;
@end

@interface CpsModifySubnetResult : NSObject
/// 子网详细信息
 @property (strong,nonatomic,nonnull)  Subnet*  subnet;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubnet:(Subnet*) subnet;
@end

@interface CpsCreateSubnetResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateSubnetResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateSubnetResult*) result;
@end

@interface CpsDescribeBasicSubnetResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeBasicSubnetResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeBasicSubnetResult*) result;
@end

@interface CpsDescribeSubnetsResult : NSObject
/// Subnets
 @property (strong,nonatomic,nonnull)  NSArray<Subnet*>*  subnets;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubnets:(NSArray<Subnet*>*) subnets

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsDescribeSubnetsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeSubnetsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeSubnetsResult*) result;
@end

@interface CpsCreateSubnetRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 子网配置
@property (strong,nonatomic,nonnull)  SubnetSpec*  subnetSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
subnetSpec:(SubnetSpec*)subnetSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
subnetSpec:(SubnetSpec*)subnetSpec;

@end

@interface CpsDescribeSubnetResult : NSObject
/// 子网详细信息
 @property (strong,nonatomic,nonnull)  Subnet*  subnet;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubnet:(Subnet*) subnet;
@end

@interface CpsDescribeSubnetResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeSubnetResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeSubnetResult*) result;
@end

@interface CpsDescribeSubnetsRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 可用区，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  az;
/// 子网名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 私有网络ID，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  vpcId;
/// subnetId - 子网ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
az:(NSString*)az
name:(NSString*)name
vpcId:(NSString*)vpcId
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
az:(NSString*)az
name:(NSString*)name
vpcId:(NSString*)vpcId
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsDeleteSubnetResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDeleteSubnetResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDeleteSubnetResult*) result;
@end

@interface CpsModifySubnetResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifySubnetResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifySubnetResult*) result;
@end

@interface CpsDescribeElasticIpsRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 弹性公网IP状态，取值范围：associate、disassociate
@property (strong,nonatomic,nonnull)  NSString*  status;
/// elasticIpId - 弹性公网IPID，精确匹配，支持多个&lt;br/&gt;
   /// elasticIp - 弹性公网IP，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
status:(NSString*)status
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
status:(NSString*)status
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsModifyElasticIpBandwidthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyElasticIpBandwidthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyElasticIpBandwidthResult*) result;
@end

@interface CpsApplyElasticIpsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsApplyElasticIpsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsApplyElasticIpsResult*) result;
@end

@interface CpsDescribeElasticIpResult : NSObject
/// 弹性公网IP详细信息
 @property (strong,nonatomic,nonnull)  ElasticIp*  elasticIp;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithElasticIp:(ElasticIp*) elasticIp;
@end

@interface CpsApplyElasticIpsRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 弹性公网IP配置
@property (strong,nonatomic,nonnull)  ElasticIpSpec*  elasticIpSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
elasticIpSpec:(ElasticIpSpec*)elasticIpSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
elasticIpSpec:(ElasticIpSpec*)elasticIpSpec;

@end

@interface CpsDescribeElasticIpResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeElasticIpResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeElasticIpResult*) result;
@end

@interface CpsDescribeElasticIpsResult : NSObject
/// ElasticIps
 @property (strong,nonatomic,nonnull)  NSArray<ElasticIp*>*  elasticIps;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithElasticIps:(NSArray<ElasticIp*>*) elasticIps

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsDescribeElasticIpsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeElasticIpsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeElasticIpsResult*) result;
@end

@interface CpsQueryServerGroupsResult : NSObject
/// Servers
 @property (strong,nonatomic,nonnull)  NSArray<ServerGroup*>*  servers;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServers:(NSArray<ServerGroup*>*) servers

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsQueryServerGroupsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryServerGroupsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryServerGroupsResult*) result;
@end

@interface CpsCreateServerGroupRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 虚拟服务器组配置
@property (strong,nonatomic,nonnull)  ServerGroupSpec*  serverGroupSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
serverGroupSpec:(ServerGroupSpec*)serverGroupSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
serverGroupSpec:(ServerGroupSpec*)serverGroupSpec;

@end

@interface CpsQueryServerGroupResult : NSObject
/// 服务器组详细信息
 @property (strong,nonatomic,nonnull)  ServerGroup*  serverGroup;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithServerGroup:(ServerGroup*) serverGroup;
@end

@interface CpsQueryServerGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryServerGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryServerGroupResult*) result;
@end

@interface CpsQueryServerGroupsRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 负载均衡ID
@property (strong,nonatomic,nonnull)  NSString*  loadBalancerId;
/// serverGroupId   - 虚拟服务器组ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
loadBalancerId:(NSString*)loadBalancerId
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
loadBalancerId:(NSString*)loadBalancerId
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsCreateServerGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateServerGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateServerGroupResult*) result;
@end

@interface CpsModifyServerGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyServerGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyServerGroupResult*) result;
@end

@interface CpsDeleteServerGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDeleteServerGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDeleteServerGroupResult*) result;
@end

@interface CpsResetPasswordResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsResetPasswordResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsResetPasswordResult*) result;
@end

@interface CpsModifyBandwidthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyBandwidthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyBandwidthResult*) result;
@end

@interface CpsDescribeInstanceStatusResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeInstanceStatusResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeInstanceStatusResult*) result;
@end

@interface CpsCreateInstancesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateInstancesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateInstancesResult*) result;
@end

@interface CpsStartInstanceResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsStartInstanceResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsStartInstanceResult*) result;
@end

@interface CpsDescribeInstanceRaidResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeInstanceRaidResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeInstanceRaidResult*) result;
@end

@interface CpsStopInstanceResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsStopInstanceResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsStopInstanceResult*) result;
@end

@interface CpsReinstallInstanceResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsReinstallInstanceResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsReinstallInstanceResult*) result;
@end

@interface CpsDescribeDeviceTypesResult : NSObject
/// DeviceTypes
 @property (strong,nonatomic,nonnull)  NSArray<DeviceType*>*  deviceTypes;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithDeviceTypes:(NSArray<DeviceType*>*) deviceTypes;
@end

@interface CpsDescribeDeviceRaidsResult : NSObject
/// Raids
 @property (strong,nonatomic,nonnull)  NSArray<Raid*>*  raids;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRaids:(NSArray<Raid*>*) raids;
@end

@interface CpsDescribeDeviceRaidsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeDeviceRaidsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeDeviceRaidsResult*) result;
@end

@interface CpsDescribeDeviceTypesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeDeviceTypesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeDeviceTypesResult*) result;
@end

@interface CpsAssociateElasticIpResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsAssociateElasticIpResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsAssociateElasticIpResult*) result;
@end

@interface CpsDescribeInstancesRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 可用区，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  az;
/// 云物理服务器名称，支持模糊匹配
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 网络类型，精确匹配，支持basic，vpc
@property (strong,nonatomic,nonnull)  NSString*  networkType;
/// 实例类型，精确匹配，调用接口（describeDeviceTypes）获取实例类型
@property (strong,nonatomic,nonnull)  NSString*  deviceType;
/// 子网ID
@property (strong,nonatomic,nonnull)  NSString*  subnetId;
/// 密钥对ID
@property (strong,nonatomic,nonnull)  NSString*  keypairId;
/// 是否启用外网, yes/no
@property (strong,nonatomic,nonnull)  NSString*  enableInternet;
/// instanceId - 云物理服务器ID，精确匹配，支持多个&lt;br/&gt;
   /// privateIp - 云物理服务器内网IP，精确匹配，支持多个&lt;br/&gt;
   /// status - 云物理服务器状态，参考云物理服务器状态，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
az:(NSString*)az
name:(NSString*)name
networkType:(NSString*)networkType
deviceType:(NSString*)deviceType
subnetId:(NSString*)subnetId
keypairId:(NSString*)keypairId
enableInternet:(NSString*)enableInternet
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
az:(NSString*)az
name:(NSString*)name
networkType:(NSString*)networkType
deviceType:(NSString*)deviceType
subnetId:(NSString*)subnetId
keypairId:(NSString*)keypairId
enableInternet:(NSString*)enableInternet
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsCreateInstancesRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 描述云物理服务器配置
@property (strong,nonatomic,nonnull)  InstanceSpec*  instanceSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
instanceSpec:(InstanceSpec*)instanceSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
instanceSpec:(InstanceSpec*)instanceSpec;

@end

@interface CpsDescribeInstanceNameResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeInstanceNameResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeInstanceNameResult*) result;
@end

@interface CpsDescribeInstanceMonitorInfoResult : NSObject
/// 云物理服务器监控信息
 @property (strong,nonatomic,nonnull)  MetricData*  metricDatas;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithMetricDatas:(MetricData*) metricDatas;
@end

@interface CpsDescribeInstanceMonitorInfoResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeInstanceMonitorInfoResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeInstanceMonitorInfoResult*) result;
@end

@interface CpsReinstallInstanceRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 云物理服务器配置
@property (strong,nonatomic,nonnull)  ReinstallInstanceSpec*  instanceSpec;
/// 云物理服务器ID
@property (strong,nonatomic,nonnull)  NSString*  instanceId;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
instanceSpec:(ReinstallInstanceSpec*)instanceSpec
instanceId:(NSString*)instanceId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
instanceSpec:(ReinstallInstanceSpec*)instanceSpec
instanceId:(NSString*)instanceId;

@end

@interface CpsDescribeInstancesResult : NSObject
/// Instances
 @property (strong,nonatomic,nonnull)  NSArray<Instance*>*  instances;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithInstances:(NSArray<Instance*>*) instances

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsDescribeOSResult : NSObject
/// Oss
 @property (strong,nonatomic,nonnull)  NSArray<Os*>*  oss;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithOss:(NSArray<Os*>*) oss;
@end

@interface CpsDescribeInstanceResult : NSObject
/// Instance
 @property (strong,nonatomic,nonnull)  Instance*  instance;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithInstance:(Instance*) instance;
@end

@interface CpsDescribeOSResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeOSResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeOSResult*) result;
@end

@interface CpsModifyInstanceResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyInstanceResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyInstanceResult*) result;
@end

@interface CpsDescribeInstanceResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeInstanceResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeInstanceResult*) result;
@end

@interface CpsRestartInstanceResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsRestartInstanceResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsRestartInstanceResult*) result;
@end

@interface CpsDisassociateElasticIpResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDisassociateElasticIpResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDisassociateElasticIpResult*) result;
@end

@interface CpsDescribeInstancesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeInstancesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeInstancesResult*) result;
@end

@interface CpsCreateLoadBalancerRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 负载均衡配置
@property (strong,nonatomic,nonnull)  LoadBalancerSpec*  loadBalancerSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
loadBalancerSpec:(LoadBalancerSpec*)loadBalancerSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
loadBalancerSpec:(LoadBalancerSpec*)loadBalancerSpec;

@end

@interface CpsCreateLoadBalancerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateLoadBalancerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateLoadBalancerResult*) result;
@end

@interface CpsModifyLoadBalancerResult : NSObject
/// 负载均衡实例详细信息
 @property (strong,nonatomic,nonnull)  LoadBalancer*  loadBalancer;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithLoadBalancer:(LoadBalancer*) loadBalancer;
@end

@interface CpsQueryLoadBalancerResult : NSObject
/// 负载均衡实例详细信息
 @property (strong,nonatomic,nonnull)  LoadBalancer*  loadBalancer;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithLoadBalancer:(LoadBalancer*) loadBalancer;
@end

@interface CpsQueryLoadBalancerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryLoadBalancerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryLoadBalancerResult*) result;
@end

@interface CpsStopLoadBalancerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsStopLoadBalancerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsStopLoadBalancerResult*) result;
@end

@interface CpsStartLoadBalancerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsStartLoadBalancerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsStartLoadBalancerResult*) result;
@end

@interface CpsModifyLoadBalancerResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyLoadBalancerResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyLoadBalancerResult*) result;
@end

@interface CpsQueryLoadBalancersResult : NSObject
/// LoadBalancers
 @property (strong,nonatomic,nonnull)  NSArray<LoadBalancer*>*  loadBalancers;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithLoadBalancers:(NSArray<LoadBalancer*>*) loadBalancers

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsQueryLoadBalancersRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 状态
@property (strong,nonatomic,nonnull)  NSString*  status;
/// 名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 私有网络ID，精确匹配
@property (strong,nonatomic,nonnull)  NSString*  vpcId;
/// 是否绑定eip
@property (strong,nonatomic,nonnull)  NSNumber*  bindEip;
/// loadBalancerId - 负载均衡实例ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
status:(NSString*)status
name:(NSString*)name
vpcId:(NSString*)vpcId
bindEip:(NSNumber*)bindEip
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
status:(NSString*)status
name:(NSString*)name
vpcId:(NSString*)vpcId
bindEip:(NSNumber*)bindEip
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsAssociateElasticIpLBResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsAssociateElasticIpLBResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsAssociateElasticIpLBResult*) result;
@end

@interface CpsDisassociateElasticIpLBResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDisassociateElasticIpLBResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDisassociateElasticIpLBResult*) result;
@end

@interface CpsQueryLoadBalancersResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryLoadBalancersResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryLoadBalancersResult*) result;
@end

@interface CpsDescribeVpcsRequest:JDCloudRequest

/// 页码；默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 私有网络名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// vpcId - 私有网络ID，精确匹配，支持多个
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name
filters:(NSArray<Filter*>*)filters;

@end

@interface CpsModifyVpcResult : NSObject
/// 私有网络详细信息
 @property (strong,nonatomic,nonnull)  Vpc*  vpc;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithVpc:(Vpc*) vpc;
@end

@interface CpsCreateVpcResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsCreateVpcResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsCreateVpcResult*) result;
@end

@interface CpsDescribeVpcResult : NSObject
/// 私有网络详细信息
 @property (strong,nonatomic,nonnull)  Vpc*  vpc;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithVpc:(Vpc*) vpc;
@end

@interface CpsDescribeVpcResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeVpcResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeVpcResult*) result;
@end

@interface CpsCreateVpcRequest:JDCloudRequest

/// 由客户端生成，用于保证请求的幂等性，长度不能超过36个字符；&lt;br/&gt;
   /// 如果多个请求使用了相同的clientToken，只会执行第一个请求，之后的请求直接返回第一个请求的结果&lt;br/&gt;
   /// 
@property (strong,nonatomic,nonnull)  NSString*  clientToken;
/// 子网配置
@property (strong,nonatomic,nonnull)  VpcSpec*  vpcSpec;
-(id) initWithRegion:(NSString *)regionId
clientToken:(NSString*)clientToken
vpcSpec:(VpcSpec*)vpcSpec;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientToken:(NSString*)clientToken
vpcSpec:(VpcSpec*)vpcSpec;

@end

@interface CpsModifyVpcResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsModifyVpcResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsModifyVpcResult*) result;
@end

@interface CpsDeleteVpcResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDeleteVpcResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDeleteVpcResult*) result;
@end

@interface CpsDescribeVpcsResult : NSObject
/// Vpcs
 @property (strong,nonatomic,nonnull)  NSArray<Vpc*>*  vpcs;
/// 页码；默认为1
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认为20；取值范围[20, 100]
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithVpcs:(NSArray<Vpc*>*) vpcs

    pageNumber:(NSNumber*)pageNumber

    pageSize:(NSNumber*)pageSize

    totalCount:(NSNumber*)totalCount;
@end

@interface CpsDescribeVpcsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeVpcsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeVpcsResult*) result;
@end

@interface CpsQueryCPSLBRegionsResult : NSObject
/// Regions
 @property (strong,nonatomic,nonnull)  NSArray<Region*>*  regions;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRegions:(NSArray<Region*>*) regions;
@end

@interface CpsQueryCPSLBRegionsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsQueryCPSLBRegionsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsQueryCPSLBRegionsResult*) result;
@end

@interface CpsQueryCPSLBRegionsRequest:JDCloudRequest

@end

@interface CpsDescribeRegionesResult : NSObject
/// Regions
 @property (strong,nonatomic,nonnull)  NSArray<Region*>*  regions;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRegions:(NSArray<Region*>*) regions;
@end

@interface CpsDescribeRegionesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property CpsDescribeRegionesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(CpsDescribeRegionesResult*) result;
@end

#endif /* CpsApiModel_h */
